## API Report File for "@backstage/plugin-notifications-node"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts
import { DiscoveryService } from '@backstage/backend-plugin-api';
import { ExtensionPoint } from '@backstage/backend-plugin-api';
import { Notification as Notification_2 } from '@backstage/plugin-notifications-common';
import { NotificationPayload } from '@backstage/plugin-notifications-common';
import { ServiceRef } from '@backstage/backend-plugin-api';
import { TokenManager } from '@backstage/backend-common';

// @public (undocumented)
export class DefaultNotificationService implements NotificationService {
  // (undocumented)
  static create({
    tokenManager,
    discovery,
    pluginId,
  }: NotificationServiceOptions): DefaultNotificationService;
  // (undocumented)
  send(notification: NotificationSendOptions): Promise<void>;
}

// @public (undocumented)
export interface NotificationProcessor {
  decorate?(notification: Notification_2): Promise<Notification_2>;
  send?(notification: Notification_2): Promise<void>;
}

// @public (undocumented)
export type NotificationRecipients = {
  type: 'entity';
  entityRef: string | string[];
};

// @public (undocumented)
export type NotificationSendOptions = {
  recipients: NotificationRecipients;
  payload: NotificationPayload;
};

// @public (undocumented)
export interface NotificationService {
  // (undocumented)
  send(options: NotificationSendOptions): Promise<void>;
}

// @public (undocumented)
export const notificationService: ServiceRef<NotificationService, 'plugin'>;

// @public (undocumented)
export type NotificationServiceOptions = {
  discovery: DiscoveryService;
  tokenManager: TokenManager;
  pluginId: string;
};

// @public (undocumented)
export interface NotificationsProcessingExtensionPoint {
  // (undocumented)
  addProcessor(
    ...processors: Array<NotificationProcessor | Array<NotificationProcessor>>
  ): void;
}

// @public (undocumented)
export const notificationsProcessingExtensionPoint: ExtensionPoint<NotificationsProcessingExtensionPoint>;
```
